The problem of community detection is widely known in the context of social and information network analysis. Most existing approaches for community detection determine the dense graphs in the underlying network. As used herein, a community may, by way of example, be considered a group of nodes densely connected by edges. Existing approaches for community detection in graphs can include, for example, node clustering algorithms for graphs with the use of shingling techniques, matrix co-clustering techniques, and tile determination in matrices. The problem of community detection in social networks has also become increasingly prominent because of the increasing importance of social networking applications. However, none of the techniques are designed for the problem of determination of sparse communities.